package com.kly.user.service;

import com.kly.user.dto.UserBackDto;
import com.kly.user.dto.UserPromotionRecordDto;

public interface UserPromotionRecordService {

    /**
     * 判断是否有记录
     *
     * @param userCode
     * @param promotionType
     * @return
     */
    int queryCountByPromotionType(String userCode, Integer promotionType);


    /**
     * 新增记录
     *
     * @param userPromotionRecordDto
     */
    void addUserPromotionRecord(UserPromotionRecordDto userPromotionRecordDto);

    /**
     * 读取最新记录
     *
     * @param userCode
     * @return
     */
    UserPromotionRecordDto getLastByUserCode(String userCode);


    /**
     * 读取老用户召回信息
     * @param userCode
     * @return
     */
    UserBackDto getUserBackByUserCode(String userCode);


    /**
     * 修改状态
     * @param userBackDto
     */
    void updateUserBack(UserBackDto userBackDto);

    /**
     * 更新信息
     * @param userPromotionRecordDto
     */
    void UpdateUserPromotionRecord(UserPromotionRecordDto userPromotionRecordDto);


    /**
     * 读取用户促销信息
     * @param userCode
     * @return
     */
    UserPromotionRecordDto getUserPromotion(String userCode);

    /**
     * 判断用户是否正在促销
     * @param userCode
     * @return
     */
    int getUserPromotionCount(String userCode);

}
